//
//  UIColor+Category.h
//  XLDoctor
//
//  Created by longma on 2018/9/4.
//  Copyright © 2018年 XLH. All rights reserved.
//

#import <UIKit/UIKit.h>



@interface UIColor (MJUI)


/**
 设置 UIColor的Alpha(也可以用 colorWithAlphaComponent 系统方法)

 @param customAlpha 值
 @return 新的color
 */
- (UIColor *)mj_colorWithAlpha:(CGFloat)customAlpha;

/**
 16进制颜色转换为UIColor
 
 @param hexColor 16进制字符串（可以以0x开头，可以以#开头，也可以就是6位的16进制）
 @return 16进制字符串对应的颜色
 */
+(UIColor *)mj_colorWithHexString:(NSString *)hexColor;

/**
 16进制颜色转换为UIColor
 
 @param hexColor 16进制字符串（可以以0x开头，可以以#开头，也可以就是6位的16进制）
 @param alpha 透明度
 @return 16进制字符串对应的颜色
 */
+ (UIColor *)mj_colorWithHexString:(NSString *)hexColor alpha:(CGFloat)alpha;

/**
 *  将当前色值转换为hex字符串，通道排序是AARRGGBB（与Android保持一致）
 *  @return 色值对应的 hex 字符串，以 # 开头，例如 #00ff00ff
 */
- (NSString *)mj_hexString;

/// 随机颜色
+ (UIColor *)mj_randomColor;

/**
 *  获取当前 UIColor 对象里的红色色值
 *
 *  @return 红色通道的色值，值范围为0.0-1.0
 */
- (CGFloat)mj_red;

/**
 *  获取当前 UIColor 对象里的绿色色值
 *
 *  @return 绿色通道的色值，值范围为0.0-1.0
 */
- (CGFloat)mj_green;

/**
 *  获取当前 UIColor 对象里的蓝色色值
 *
 *  @return 蓝色通道的色值，值范围为0.0-1.0
 */
- (CGFloat)mj_blue;

/**
 *  获取当前 UIColor 对象里的透明色值
 *
 *  @return 透明通道的色值，值范围为0.0-1.0
 */
- (CGFloat)mj_alpha;

/**
 将当前色值转换成“255,255,255,1.00”的字符串，如果 alpha 通道为1也会输出出来。其中 alpha 通道必定带两位小数点，其他三个通道都是整数。
 */
- (NSString *)mj_RGBString;

/**
 将当前色值转换成“255,255,255,1.00”的字符串，如果 alpha 通道为1也会输出出来。其中 alpha 通道必定带两位小数点，其他三个通道都是整数。
 */
- (NSString *)mj_RGBAString;

/**
 0x开头的十六进制转换成的颜色,透明度可调整。
 */
+ (UIColor *)mj_colorWithHex:(long)hexColor alpha:(float)opacity;

@end
